package com.btshop.goods.pojo;

import java.io.Serializable;
import java.util.Date;

import io.swagger.annotations.ApiModelProperty;

public class Spu implements Serializable {
    //主键
    @ApiModelProperty(value = "主键")
    private Long id;

    //货号
    @ApiModelProperty(value = "货号")
    private String sn;

    //SPU名
    @ApiModelProperty(value = "SPU名")
    private String name;

    //副标题
    @ApiModelProperty(value = "副标题")
    private String caption;

    //品牌ID
    @ApiModelProperty(value = "品牌ID")
    private Long brandId;

    //一级分类
    @ApiModelProperty(value = "一级分类")
    private Long category1Id;

    //二级分类
    @ApiModelProperty(value = "二级分类")
    private Long category2Id;

    //三级分类
    @ApiModelProperty(value = "三级分类")
    private Long category3Id;

    //模板ID
    @ApiModelProperty(value = "模板ID")
    private Long templateId;

    //运费模板id
    @ApiModelProperty(value = "运费模板id")
    private Long freightId;

    //图片
    @ApiModelProperty(value = "图片")
    private String image;

    //图片列表
    @ApiModelProperty(value = "图片列表")
    private String images;

    //售后服务
    @ApiModelProperty(value = "售后服务")
    private String saleService;

    //规格列表
    @ApiModelProperty(value = "规格列表")
    private String specItems;

    //参数列表
    @ApiModelProperty(value = "参数列表")
    private String paraItems;

    //销量
    @ApiModelProperty(value = "销量")
    private Integer saleNum;

    //评论数
    @ApiModelProperty(value = "评论数")
    private Integer commentNum;

    //是否上架,0已下架，1已上架
    @ApiModelProperty(value = "是否上架,0已下架，1已上架")
    private String isMarketable;

    //是否启用规格
    @ApiModelProperty(value = "是否启用规格")
    private String isEnableSpec;

    //是否删除,0:未删除，1：已删除
    @ApiModelProperty(value = "是否删除,0:未删除，1：已删除")
    private String isDelete;

    //审核状态，0：未审核，1：已审核，2：审核不通过
    @ApiModelProperty(value = "审核状态，0：未审核，1：已审核，2：审核不通过")
    private String status;

    //创建时间
    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    //更新时间
    @ApiModelProperty(value = "更新时间")
    private Date updateTime;

    //乐观锁版本号
    @ApiModelProperty(value = "乐观锁版本号")
    private Integer optimistic;

    //备注字段
    @ApiModelProperty(value = "备注字段")
    private String remark;

    //介绍
    @ApiModelProperty(value = "介绍")
    private String introduction;

    private static final long serialVersionUID = 1L;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getSn() {
        return sn;
    }

    public void setSn(String sn) {
        this.sn = sn;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getCaption() {
        return caption;
    }

    public void setCaption(String caption) {
        this.caption = caption;
    }

    public Long getBrandId() {
        return brandId;
    }

    public void setBrandId(Long brandId) {
        this.brandId = brandId;
    }

    public Long getCategory1Id() {
        return category1Id;
    }

    public void setCategory1Id(Long category1Id) {
        this.category1Id = category1Id;
    }

    public Long getCategory2Id() {
        return category2Id;
    }

    public void setCategory2Id(Long category2Id) {
        this.category2Id = category2Id;
    }

    public Long getCategory3Id() {
        return category3Id;
    }

    public void setCategory3Id(Long category3Id) {
        this.category3Id = category3Id;
    }

    public Long getTemplateId() {
        return templateId;
    }

    public void setTemplateId(Long templateId) {
        this.templateId = templateId;
    }

    public Long getFreightId() {
        return freightId;
    }

    public void setFreightId(Long freightId) {
        this.freightId = freightId;
    }

    public String getImage() {
        return image;
    }

    public void setImage(String image) {
        this.image = image;
    }

    public String getImages() {
        return images;
    }

    public void setImages(String images) {
        this.images = images;
    }

    public String getSaleService() {
        return saleService;
    }

    public void setSaleService(String saleService) {
        this.saleService = saleService;
    }

    public String getSpecItems() {
        return specItems;
    }

    public void setSpecItems(String specItems) {
        this.specItems = specItems;
    }

    public String getParaItems() {
        return paraItems;
    }

    public void setParaItems(String paraItems) {
        this.paraItems = paraItems;
    }

    public Integer getSaleNum() {
        return saleNum;
    }

    public void setSaleNum(Integer saleNum) {
        this.saleNum = saleNum;
    }

    public Integer getCommentNum() {
        return commentNum;
    }

    public void setCommentNum(Integer commentNum) {
        this.commentNum = commentNum;
    }

    public String getIsMarketable() {
        return isMarketable;
    }

    public void setIsMarketable(String isMarketable) {
        this.isMarketable = isMarketable;
    }

    public String getIsEnableSpec() {
        return isEnableSpec;
    }

    public void setIsEnableSpec(String isEnableSpec) {
        this.isEnableSpec = isEnableSpec;
    }

    public String getIsDelete() {
        return isDelete;
    }

    public void setIsDelete(String isDelete) {
        this.isDelete = isDelete;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public Integer getOptimistic() {
        return optimistic;
    }

    public void setOptimistic(Integer optimistic) {
        this.optimistic = optimistic;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public String getIntroduction() {
        return introduction;
    }

    public void setIntroduction(String introduction) {
        this.introduction = introduction;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", sn=").append(sn);
        sb.append(", name=").append(name);
        sb.append(", caption=").append(caption);
        sb.append(", brandId=").append(brandId);
        sb.append(", category1Id=").append(category1Id);
        sb.append(", category2Id=").append(category2Id);
        sb.append(", category3Id=").append(category3Id);
        sb.append(", templateId=").append(templateId);
        sb.append(", freightId=").append(freightId);
        sb.append(", image=").append(image);
        sb.append(", images=").append(images);
        sb.append(", saleService=").append(saleService);
        sb.append(", specItems=").append(specItems);
        sb.append(", paraItems=").append(paraItems);
        sb.append(", saleNum=").append(saleNum);
        sb.append(", commentNum=").append(commentNum);
        sb.append(", isMarketable=").append(isMarketable);
        sb.append(", isEnableSpec=").append(isEnableSpec);
        sb.append(", isDelete=").append(isDelete);
        sb.append(", status=").append(status);
        sb.append(", createTime=").append(createTime);
        sb.append(", updateTime=").append(updateTime);
        sb.append(", optimistic=").append(optimistic);
        sb.append(", remark=").append(remark);
        sb.append(", introduction=").append(introduction);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}